Component org.nuxeo.ecm.multi.tenant.actions
In bundle org.nuxeo.ecm.multi.tenant
Contributions
XML Source
<?xml version="1.0"?>
<component name="org.nuxeo.ecm.multi.tenant.actions">
<require>org.nuxeo.ecm.platform.actions</require>
<require>org.nuxeo.ecm.platform.audit.web</require>
<require>org.nuxeo.ecm.directory.actions</require>
<extension target="org.nuxeo.ecm.platform.actions.ActionService"
point="actions">
<!-- Admin Center -->
<action id="TenantAdministration"
link="/incl/tenant/tenant_administration.xhtml"
label="label.multi.tenant.isolation"
order="150">
<category>NUXEO_ADMIN</category>
<filter-id>only_for_manager</filter-id>
</action>
<!-- Hide Manage tab for tenants -->
<action id="TAB_MANAGE">
<filter-id>denyForTenantConfig</filter-id>
</action>
<action id="TAB_CONTENT_HISTORY">
<filter-id>denyForTenantConfig</filter-id>
</action>
<!-- Tenant Administration tabs -->
<action id="TAB_TENANT_ADMINISTRATION" link="/incl/tabs/document_manage.xhtml" order="240"
label="action.view.manage" icon="/icons/file.gif">
<category>VIEW_ACTION_LIST</category>
<filter-id>manage</filter-id>
<filter-id>allowForTenantConfig</filter-id>
<filter id="TAB_TENANT_ADMINISTRATION_has_subtabs">
<rule grant="false">
<condition>
#{webActions.getActionsList('TAB_TENANT_ADMINISTRATION_sub_tab').isEmpty()}
</condition>
</rule>
</filter>
</action>
<action id="TAB_TENANT_CONFIGURATION"
link="/incl/tabs/tenant_configuration.xhtml" order="40"
label="label.tenant.configuration" icon="/icons/file.gif">
<category>TAB_TENANT_ADMINISTRATION_sub_tab</category>
<filter-id>tenantAdministrators</filter-id>
<filter-id>allowForTenantConfig</filter-id>
</action>
<action id="TAB_TENANT_RIGHTS" link="/incl/tabs/document_rights.xhtml" order="50"
label="action.view.rights" icon="/icons/file.gif">
<category>TAB_TENANT_ADMINISTRATION_sub_tab</category>
<filter-id>rights</filter-id>
<filter-id>tenantAdministrators</filter-id>
<filter-id>allowForTenantConfig</filter-id>
</action>
<action id="TAB_TENANT_LOCAL_CONFIGURATION"
link="/incl/tabs/local_configuration.xhtml" order="70"
label="action.view.local.configuration" icon="/icons/file.gif">
<category>TAB_TENANT_ADMINISTRATION_sub_tab</category>
<filter-id>has_local_configuration_available</filter-id>
<filter-id>tenantAdministrators</filter-id>
<filter-id>allowForTenantConfig</filter-id>
</action>
<action id="TAB_TENANT_HISTORY" link="/incl/tabs/tenant_history.xhtml"
enabled="true" label="action.view.tenant.history" icon="/icons/file.gif" order="100">
<category>TAB_TENANT_ADMINISTRATION_sub_tab</category>
<filter-id>tenantAdministrators</filter-id>
<filter-id>allowForTenantConfig</filter-id>
</action>
<action id="TAB_TENANT_TRASH_CONTENT"
link="/incl/tabs/document_trash_content.xhtml" order="200"
label="action.view.trash.content" icon="/icons/file.gif">
<category>TAB_TENANT_ADMINISTRATION_sub_tab</category>
<filter-id>allowForTenantConfig</filter-id>
<filter-id>tenantAdministrators</filter-id>
<filter id="viewTrash">
<rule grant="true">
<permission>Manage everything</permission>
<facet>Folderish</facet>
<condition>#{deleteActions.trashManagementEnabled}</condition>
</rule>
</filter>
</action>
</extension>
<extension target="org.nuxeo.ecm.platform.actions.ActionService"
point="filters">
<filter id="allowForTenantConfig">
<rule grant="true">
<facet>TenantConfig</facet>
</rule>
</filter>
<filter id="denyForTenantConfig">
<rule grant="false">
<facet>TenantConfig</facet>
</rule>
</filter>
<filter id="tenantAdministrators">
<rule grant="true">
<condition>#{currentUser.administrator}</condition>
<condition>#{currentUser.isMemberOf('powerusers')}</condition>
</rule>
</filter>
<filter id="readOnlyDirectory">
<rule grant="true">
<condition>#{multiTenantActions.isReadOnlyDirectory(directoryName)}</condition>
</rule>
</filter>
</extension>
</component>